1. Field of the Invention
The present invention relates to a method, system, and program for monitoring a device with a computer using a user selected setting and, in particular, monitoring printers in a network.
2. Description of the Related Art
Network printing systems generally comprise an assemblage of different printers, client computers, servers, and other components connected over a network. A network administrator or user may want to monitor the status of print jobs being printed or the general operational status of the printer. A computer may monitor a remote printer over a network using a network protocol, such as SNMP or TCP/IP, or a line connection such as a parallel port connection. Current printer software includes a print monitor component to monitor printer operations. For instance in the Microsoft Windows 95/98 systems, the user may display a queue of print jobs for the printer and a current status of the print jobs. The status usually indicates whether a particular queued job was sent to the printer and its status.
One print monitor protocol is the Line Printer Daemon (LPR) protocol, which is a component of the TCP/IP network protocol. LPR is used to communicate with printers across the network. LPR runs by executing a daemon on the host computer, which is then used to transmit commands, print jobs and other information to the printer and receive data and information from the printer. The LPR protocol allows a client application on one computer to send a print job to a print spooler service on another computer. The LPR daemon monitors a printer port to which it is assigned by xe2x80x9clisteningxe2x80x9d for messages from the client. The host computer would send a print command to the LPR daemon, which would then execute the command and communicate with the printer to cause the printer to follow the command. The LPR protocol includes a command to request the state of the printer, such as pages printed, queued jobs, etc. However, LPR is not capable of providing detailed error status information back to the client application.
Client computers may also communicate with network printers using the Simple Network Management Protocol (SNMP). A computer managing a printer may use the SNMP protocol to control the operation of the managed printer and determine job and print status for the printer. SNMP provides for a limited set of operations, including the get and set commands which, respectively, allow the managing computer to retrieve data and configure the printer. These commands may be used to monitor printer operations. Another SNMP command is the xe2x80x9ctrapxe2x80x9d command which causes the managed agent to send an event notification to the management system or printer manager identifying the occurrence of conditions such as threshold that exceeds a predetermined value. The managing computer registers a trap by writing information to the managed agent, which causes the managed agent to notify the registering computer of the event indicated in the registration.
SNMP is advantageous as a communication protocol because neither the agent nor manager rely on the other to continue operating. Thus, one may fail, and the other would carry on. SNMP further does not require the establishment of a communication path prior to the transmission of data. As a result, with SNMP, there is no guarantee that a transmission was received. Although most messages do transmit successfully, those that do not cannot be retransmitted. On the other hand, SNMP""s simplicity and connectionless communication also produce a degree of robustness. Neither the manager nor the agent relies on the other for its operation. Thus, a printer manager may continue to function even if the printer fails.
With the above protocols, such as TCP/IP, SNMP, LPR, etc., a printer manager may monitor the operation of a remote printer. However, many of the current printer monitoring systems are not flexible and do not provide a wide range of settings that may be tailored to a users goals and system needs. Thus, there is a need in the art for an improved system for controlling printer monitor operations.
To overcome the limitations in the prior art described above, preferred embodiments disclose a method, system, and program for determining monitoring settings for a computer monitoring a device. A set of monitoring frequency values is provided for a user to select. A user selected monitoring frequency value is received and used to determine at least one polling interval that defines a period between polling operations from the computer to the device. The polling interval value is a different value from the user selected monitoring frequency.
In further embodiments, a base polling interval is determined that corresponds to a base monitoring frequency value in the set. A separate polling interval is then determined for each monitoring frequency value in the set, other than the base monitoring frequency. The polling interval corresponding to the selected monitoring frequency value is used to determine the period between polling operations.
In still further embodiments, there are multiple polling interval types associated with different operational states. In such case, different polling intervals are associated with the different polling interval types. An operational state is determined with respect to the computer and device. The polling interval type corresponding to the determined operational state is then determined. Determining the polling interval comprises determining the polling interval for the polling interval type.
Preferred embodiments allow a user to select a monitoring frequency value. This user selected monitoring frequency value is then used to determine a polling interval between a computer and a network device, such as a printer. If there are numerous different polling interval types for various types of operational states, e.g., an active print job at the printer, no print job sent, no traps received when there is a print job, no traps received when there is no print job, then the user selected monitoring frequency value may be used to determine the corresponding polling interval to use. In this way, the user selects a readily understandable monitoring frequency value that corresponds to a user goal to lower network traffic or increase the timeliness of status information. This user selected value is then used to determine specific settings for polling operations that would otherwise be difficult to explain to the user.
Further, the user selected monitoring frequency value is preferably readily understood by the user, whereas the actual polling intervals selected according to the user selected frequency may be at a level of detail that is incomprehensible to the user. In such case, shielding the user from having to select values for numerous specific operations, which the user may not comprehend, let alone understand the interrelations, reduces the likelihood that the user would select incompatible or nonsensical settings.